export default{
	namespaced:true,
	// 1.创建存储注册的数据状态
	state:{
		addrs : [],		//存储多个地址的数组
	},
	// 2.同步函数一设置修改state的函数操作
	mutations:{
		// 向数组添加元素
		// state表示共享数据；keyword表示组件传递的数据
		addAddrs( state,keyword ){
			console.log(keyword);
			state.addrs.push(keyword);
		},
		update( state,keyword ){
			state.addrs.forEach((item)=>{
				if(item.id == keyword.id){
					item.name = keyword.name;
					item.phone = keyword.phone;
					item.addr = keyword.addr;
					item.isShow = keyword.isShow;
				}
			})
		},
		remove(state,keyword){
			state.addrs.forEach((item,i)=>{
				if(item.id == keyword.id){
					state.addrs.splice(i,1)
				}
			})
		},
	},
	
	// 3.异步函数一设置提供给组件调用的异步函数
	actions:{
		// 创建一个函数：被组件调用且换取组件传递的数据
		// state：表示共享数据，但是只能读取
		// commit：表示mutations同步函数对象
		// keyword：组件传递过来的数据
		actionAddrs( {state,commit},keyword ){
			// 调用mutations的函数，将keyword传递过去
			commit( 'addAddrs',keyword );
		},
		actionRemove( {state,commit},keyword ){
			// 调用mutations的函数，将keyword传递过去
			commit( 'remove',keyword );
		},
		actionUpdate( {state,commit},keyword ){
			// 调用mutations的函数，将keyword传递过去
			commit( 'update',keyword );
		},
	}
}